1. Field of the Invention
The present invention relates to archiving and copying of data, and more particularly, to fast archiving of hard disk drive (HDD) data at various predetermined points in time by using comparison of descriptors.
2. Description of the Related Art
Currently, there are a number of conventional methods that relate to organization of data archiving. One of these methods is a backup of the entire hard drive, which typically involves copying of the hard drive content onto some other medium, such as another hard disk drive, a DVD ROM, a DVD RAM, a flash disk, etc. The primary disadvantage of such a method is the need to backup what is frequently a very large amount of data. On the one hand, this results in a relatively lengthy process of archiving, and, on the other hand, frequently requires relatively large available space for the archived data. This ultimately results in a relatively high cost of archiving per unit of archived data.
Another approach is often referred to as “incremental backup,” which generally decreases the amount of space required for the archiving. With the incremental backup, typically the contents of the hard disk drive are archived, or stored somewhere, once. After that, only that data that has been changed, or added, since the previous backup, or since the pervious incremental backup, is actually archived. Recovery of the data from the archive typically involves merging of the original backup and the various incremental backups.
There are generally two conventional approaches to implementing the incremental backup. One approach is to archive data in a form of logical structures, such as files. The second approach is to preserve the physical structures as they are represented on a storage medium. In other words, in the second case, sectors, clusters, and other physical data blocks are archived.
Despite the fact that incremental backup at a logical level makes it easier to identify data that is subject to archiving, in a number of situations, this approach is unacceptable. For example, backup at a physical level provides an ability to restore the functionality of the computing system, since it is possible to restore hidden and otherwise unmovable data blocks, for example, hidden and system areas of the disk, including boot areas.
At the same time, incremental backup at a physical level requires identifying the blocks that are subject to archiving, in other words, identifying blocks whose content did not change since the prior archiving operation. When data block level comparison is used, this task requires a considerable time and CPU resources, both for data block comparison and for extraction of previously archived data blocks from the archive.
Accordingly, there is a need in the art for an effective and efficient method of identifying data blocks that are not subject to archiving, with minimal time and effort.